package baseDeDatos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class GestorBD {
    
    private Connection conexion;
    private boolean conexionExitosa;
    private String usuario;
    private String contrasenia;
    private String urlBD;
    
    
    public GestorBD(String url, String user, String pass)
    {
        usuario = user;
        contrasenia = pass;
        urlBD = url;
        crearConexion();
    }

    private void crearConexion()
    {
       try 
       {
           if (conexion == null)
           {    
                Class.forName("com.mysql.jdbc.Driver");
                conexion = DriverManager.getConnection(urlBD, usuario, contrasenia);
                conexionExitosa = true;
           }
       } 
       catch (Exception e) 
       {
            conexionExitosa = false;
       }
    }
    
    public boolean conexionExitosa()
    {
        return conexionExitosa;
    }
    
    public void desconectar() throws Exception{
        if(conexion != null && !(conexion.isClosed()))
        {
            conexion.close();
            conexion = null;
            conexionExitosa = false;
        }
    }
    
    public ResultSet consultar(String consulta) throws SQLException
    {  
        ResultSet resultado = null;
        try 
        {
            Statement sentencia = conexion.createStatement();
            resultado = sentencia.executeQuery(consulta);
        } 
        catch (SQLException ex) 
        {
            ex.printStackTrace();
        }
        return resultado;
    }
}